<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<#--
    1.
-->

使用if和??语句判断元素是否存在:
<#if aaa??>
    aaa存在
<#else>
    aaa不存在
</#if>

<#if ccc?? && (ccc) != '' >
    ccc不为空字符串
<#else>
    ccc为空串
</#if>

1. 使用!号来预处理null值, 可以从输出中发现, 在使用!号之后, freemarker会先判断这个值是否存在,
如果不存在, 就用!之后的内容来当做当前变量的默认值.
${aaa!'aaa不存在'}
${bbb!'bbb不存在'}

<!--
    1. 即使后台对ddd的值做出了控制过滤, 也应该使用??进行判断, 因为考虑好最坏的情况的程序才能更加健壮.
-->
<#if ddd??>
    <#if ddd == 1>
        很不满意
    <#elseif ddd == 2>
        不满意
    <#elseif ddd == 3>
        一般
    <#elseif ddd == 4>
        满意
    <#elseif ddd == 5>
        非常满意
    </#if>
<#else>
    未评价
</#if>

</body>
</html>